package cn.calin.day05.demo39hashCode;

import java.util.HashSet;

/*
    HashSet自定义类型元素

    set集合报错元素唯一：
    存储元素（String,Integer,...Student,Person...)必须重写HashSet方法和equals方法

    要求：
        同名同年龄的人，视为同一个人，只存储一次
 */
public class Demo03HashSetSavePerson {
    public static void main(String[] args) {
        //创建HashSet集合存储Person
        HashSet<Person> set=new HashSet<>();
        Person p1=new Person("小美女",19);
        Person p2=new Person("小美女",18);
        Person p3=new Person("小美女",19);
        System.out.println(p1.hashCode());//2003749087 重写Hashcode  734175840
        System.out.println(p2.hashCode());//1324119927 重写Hashcode 734175840
        System.out.println(p3.hashCode());//990368553  重写Hashcode 734175840
        System.out.println(p1==p2);//false
        System.out.println(p1.equals(p2));//false
        set.add(p1);
        set.add(p2);
        set.add(p3);
        System.out.println(set);


    }
}
